// 基于template/src/widgets/{{appEntities}}/{{ctrls@GRID}}-grid/{{spinalCase ctrl.codeName}}-grid-vo.ts.hbs生成
import { ControlVOBase } from '@/core';

export class GridDataControlVO extends ControlVOBase {
	constructor(data: any) {
		super(data);
		const wfKey = [
			'srftaskid',
			'srftaskdefinitionkey',
			'srfprocessdefinitionkey',
			'srfprocessdefinitionid',
			'srfprocessinstanceid',
		];
		//  表格自持属性
		this.$ownKeys = [
			'oauth_client_details',
			'client_id',
			'client_name',
			'authorized_grant_types',
			'scope',
			'access_token_validity',
			'refresh_token_validity',
			'srfkey',
			'srfdataaccaction',
			'srfmajortext',
			...wfKey,
		];
	}

	get client_id() {
		return this.$DO.client_id;
	}

	set client_id(value: any) {
		this.$DO.client_id = value;
	}
	get client_name() {
		return this.$DO.client_name;
	}

	set client_name(value: any) {
		this.$DO.client_name = value;
	}
	get authorized_grant_types() {
		return this.$DO.authorized_grant_types;
	}

	set authorized_grant_types(value: any) {
		this.$DO.authorized_grant_types = value;
	}
	get scope() {
		return this.$DO.scope;
	}

	set scope(value: any) {
		this.$DO.scope = value;
	}
	get access_token_validity() {
		return this.$DO.access_token_validity;
	}

	set access_token_validity(value: any) {
		this.$DO.access_token_validity = value;
	}
	get refresh_token_validity() {
		return this.$DO.refresh_token_validity;
	}

	set refresh_token_validity(value: any) {
		this.$DO.refresh_token_validity = value;
	}
	get srfkey() {
		return this.$DO.client_id;
	}

	set srfkey(value: any) {
		this.$DO.client_id = value;
	}
	get srfdataaccaction() {
		return this.$DO.client_id;
	}

	set srfdataaccaction(value: any) {
		this.$DO.client_id = value;
	}
	get srfmajortext() {
		return this.$DO.client_id;
	}

	set srfmajortext(value: any) {
		this.$DO.client_id = value;
	}

	set oauth_client_details(value: any) {
		this.$DO.client_id = value;
	}
	get oauth_client_details() {
		return this.$DO.client_id;
	}

	get srftaskid() {
		return this.$DO.srftaskid;
	}

	get srftaskdefinitionkey() {
		return this.$DO.srftaskdefinitionkey;
	}

	get srfprocessdefinitionkey() {
		return this.$DO.srfprocessdefinitionkey;
	}

	get srfprocessdefinitionid() {
		return this.$DO.srfprocessdefinitionid;
	}

	get srfprocessinstanceid() {
		return this.$DO.srfprocessinstanceid;
	}
}

export const GridControlVO = [
	{ name: 'GridControlVO', controlVO: GridDataControlVO },
];
